package com.ruoyi.system.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 题库管理对象 manager_question
 * 
 * @author ruoyi
 * @date 2025-06-13
 */
public class ManagerQuestion extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 试题ID */
    private String id;

    /** 题型（1：判断题，2：单选题，3：多选题） */
    @Excel(name = "题型", readConverterExp = "1=：判断题，2：单选题，3：多选题")
    private String questionType;

    /** 题目 */
    @Excel(name = "题目")
    private String subject;

    /** 题目图片 */
    @Excel(name = "题目图片")
    private String counurl;

    /** 题干 */
    @Excel(name = "题干")
    private String questionStem;

    /** 试题内容 */
    @Excel(name = "试题内容")
    private String counter;

    /** 正确答案 */
    @Excel(name = "正确答案")
    private String rightAnswers;

    /** 是否发布 */
    @Excel(name = "是否发布")
    private String ispublish;

    /** 归属行业 */
    @Excel(name = "归属行业")
    private String type;

    /** 答案解析 */
    @Excel(name = "答案解析")
    private String answerkeys;

    /** 出处 */
    @Excel(name = "出处")
    private String derivation;

    /** 试题难易等级（001：简单，002：一般，003：困难） */
    @Excel(name = "试题难易等级", readConverterExp = "0=01：简单，002：一般，003：困难")
    private String grade;

    /** $column.columnComment */
    @Excel(name = "试题难易等级", readConverterExp = "$column.readConverterExp()")
    private String isready;

    /** 是否必考（1必考） */
    @Excel(name = "是否必考", readConverterExp = "1=必考")
    private String isneed;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createDate;

    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date updateDate;

    /** 备注信息 */
    @Excel(name = "备注信息")
    private String remarks;

    /** 删除标记 */
    private String delFlag;

    /** $column.columnComment */
    @Excel(name = "备注信息")
    private Long extfiled1;

    /** $column.columnComment */
    @Excel(name = "备注信息")
    private String extfiled2;

    /** $column.columnComment */
    @Excel(name = "备注信息")
    private String extfiled3;

    /** $column.columnComment */
    @Excel(name = "备注信息")
    private String extfiled4;

    /** $column.columnComment */
    @Excel(name = "备注信息")
    private String extfiled5;

    public void setId(String id) 
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }
    public void setQuestionType(String questionType) 
    {
        this.questionType = questionType;
    }

    public String getQuestionType() 
    {
        return questionType;
    }
    public void setSubject(String subject) 
    {
        this.subject = subject;
    }

    public String getSubject() 
    {
        return subject;
    }
    public void setCounurl(String counurl) 
    {
        this.counurl = counurl;
    }

    public String getCounurl() 
    {
        return counurl;
    }
    public void setQuestionStem(String questionStem) 
    {
        this.questionStem = questionStem;
    }

    public String getQuestionStem() 
    {
        return questionStem;
    }
    public void setCounter(String counter) 
    {
        this.counter = counter;
    }

    public String getCounter() 
    {
        return counter;
    }
    public void setRightAnswers(String rightAnswers) 
    {
        this.rightAnswers = rightAnswers;
    }

    public String getRightAnswers() 
    {
        return rightAnswers;
    }
    public void setIspublish(String ispublish) 
    {
        this.ispublish = ispublish;
    }

    public String getIspublish() 
    {
        return ispublish;
    }
    public void setType(String type) 
    {
        this.type = type;
    }

    public String getType() 
    {
        return type;
    }
    public void setAnswerkeys(String answerkeys) 
    {
        this.answerkeys = answerkeys;
    }

    public String getAnswerkeys() 
    {
        return answerkeys;
    }
    public void setDerivation(String derivation) 
    {
        this.derivation = derivation;
    }

    public String getDerivation() 
    {
        return derivation;
    }
    public void setGrade(String grade) 
    {
        this.grade = grade;
    }

    public String getGrade() 
    {
        return grade;
    }
    public void setIsready(String isready) 
    {
        this.isready = isready;
    }

    public String getIsready() 
    {
        return isready;
    }
    public void setIsneed(String isneed) 
    {
        this.isneed = isneed;
    }

    public String getIsneed() 
    {
        return isneed;
    }
    public void setCreateDate(Date createDate) 
    {
        this.createDate = createDate;
    }

    public Date getCreateDate() 
    {
        return createDate;
    }
    public void setUpdateDate(Date updateDate) 
    {
        this.updateDate = updateDate;
    }

    public Date getUpdateDate() 
    {
        return updateDate;
    }
    public void setRemarks(String remarks) 
    {
        this.remarks = remarks;
    }

    public String getRemarks() 
    {
        return remarks;
    }
    public void setDelFlag(String delFlag) 
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag() 
    {
        return delFlag;
    }
    public void setExtfiled1(Long extfiled1) 
    {
        this.extfiled1 = extfiled1;
    }

    public Long getExtfiled1() 
    {
        return extfiled1;
    }
    public void setExtfiled2(String extfiled2) 
    {
        this.extfiled2 = extfiled2;
    }

    public String getExtfiled2() 
    {
        return extfiled2;
    }
    public void setExtfiled3(String extfiled3) 
    {
        this.extfiled3 = extfiled3;
    }

    public String getExtfiled3() 
    {
        return extfiled3;
    }
    public void setExtfiled4(String extfiled4) 
    {
        this.extfiled4 = extfiled4;
    }

    public String getExtfiled4() 
    {
        return extfiled4;
    }
    public void setExtfiled5(String extfiled5) 
    {
        this.extfiled5 = extfiled5;
    }

    public String getExtfiled5() 
    {
        return extfiled5;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("questionType", getQuestionType())
            .append("subject", getSubject())
            .append("counurl", getCounurl())
            .append("questionStem", getQuestionStem())
            .append("counter", getCounter())
            .append("rightAnswers", getRightAnswers())
            .append("ispublish", getIspublish())
            .append("type", getType())
            .append("answerkeys", getAnswerkeys())
            .append("derivation", getDerivation())
            .append("grade", getGrade())
            .append("isready", getIsready())
            .append("isneed", getIsneed())
            .append("createBy", getCreateBy())
            .append("createDate", getCreateDate())
            .append("updateBy", getUpdateBy())
            .append("updateDate", getUpdateDate())
            .append("remarks", getRemarks())
            .append("delFlag", getDelFlag())
            .append("extfiled1", getExtfiled1())
            .append("extfiled2", getExtfiled2())
            .append("extfiled3", getExtfiled3())
            .append("extfiled4", getExtfiled4())
            .append("extfiled5", getExtfiled5())
            .toString();
    }
}
